import mybaseUrl from '@/api/hostRequest.js'
let baseUrls = mybaseUrl.mybaseUrl
let number = 0
const install = (Vue, vm) => {
	// 此为自定义配置参数，具体参数见上方说明
	Vue.prototype.$u.http.setConfig({
		baseUrl: baseUrls + 'api', // 请求的本域名
		method: 'POST',
		// 设置为json，返回后会对数据进行一次JSON.parse()
		dataType: 'json',
		showLoading: true, // 是否显示请求中的loading
		loadingText: '请求中...', // 请求loading中的文字提示
		loadingTime: 1000, // 在此时间内，请求还没回来的话，就显示加载中动画，单位ms
		originalData: true, // 是否在拦截器中返回服务端的原始数据
		loadingMask: true, // 展示loading的时候，是否给一个透明的蒙层，防止触摸穿透
		timer: true, // 定时器20200703
		// 配置请求头信息
		header: {
			'content-type': 'application/json;charset=UTF-8',
			'platform': 'wxMiniProgram'
		},
	});
	let zz = '*'
	// 请求拦截部分
	Vue.prototype.$u.http.interceptor.request = (config) => {
		// uni.showLoading({
		// 	title: '请求中...'
		// })
		getApp().globalData.disbut = true //按钮
		// 配置token
		config.header['token'] = uni.getStorageSync('appToken');
		config.header['oid'] = mybaseUrl.orgId
		config.header['X-Requested-With'] = 'XMLHttpRequest'
		config.header['environment'] = mybaseUrl.environment
		config.header['env-version'] = mybaseUrl.env_version
		config.header["Access-Control-Allow-Origin"] = '*'
		// #ifdef H5
		if (config.url.indexOf('?') !== -1) {
			config.url = config.url + '&oid=' + mybaseUrl.orgId
		} else {
			config.url = config.url + '?oid=' + mybaseUrl.orgId
		}
		// #endif
		// config.url = config.url+''
		// 可以对某个url进行特别处理，这个以后会用到的


		// 最后需要将config进行return，如果return一个false值，则会取消本次请求
		// console.log('config', config);
		return config;
	}
	// 响应拦截
	Vue.prototype.$u.http.interceptor.response = (res) => {
		getApp().globalData.disbut = false //按钮
		uni.hideLoading();
		if (process.env.NODE_ENV === 'development') { //开发
			console.log('响应拦截', res.data)
		}
		if (res.data.code == 3) {
			// console.log(12312)
			uni.$u.toast('未登录请先登录')
			setTimeout(() => {
				uni.navigateTo({
					url: '/pIndex/login'
				})
			}, 1000)
			return false
		}
		if (res.data.code == 2) {
			if (number >= 1) {
				// return
			} else {
				uni.navigateTo({
					url: '/pages/index/startUp'
				})
			}
			uni.$u.toast(res.data.msg)
			number++

			return false
		}
		if (res.data.code == 0) {
			uni.$u.toast(res.data.msg)
			return false
		}
		if (res.data.code == 1 || res.data.code == 200) {
			//成功
			return res.data;
		}
	}
}

export default {
	install
}
